{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-template-rendering-core",
      "artifactVersion": "2021.57.3",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.template.manager",
          "org.nuxeo.template.manager.api",
          "org.nuxeo.template.manager.jaxrs",
          "org.nuxeo.template.manager.jxls",
          "org.nuxeo.template.manager.xdocreport"
        ],
        "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template",
        "id": "grp:org.nuxeo.template",
        "name": "org.nuxeo.template",
        "parentIds": [
          "grp:org.nuxeo.template.rendering"
        ],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "e9e176463318c286d8f00955de4c43a2",
            "encoding": "UTF-8",
            "length": 3344,
            "mimeType": "text/plain",
            "name": "ReadMe.md"
          }
        ],
        "version": "2021.57"
      },
      "bundleId": "org.nuxeo.template.manager",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--schema",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.doctypes/Contributions/org.nuxeo.platform.TemplateSources.doctypes--schema",
              "id": "org.nuxeo.platform.TemplateSources.doctypes--schema",
              "registrationOrder": 55,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"schema\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n    <schema name=\"documenttemplate\" prefix=\"tmpl\" src=\"schemas/documenttemplate.xsd\"/>\n    <schema name=\"templatesupport\" prefix=\"nxts\" src=\"schemas/templatesupport.xsd\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.doctypes/Contributions/org.nuxeo.platform.TemplateSources.doctypes--doctype",
              "id": "org.nuxeo.platform.TemplateSources.doctypes--doctype",
              "registrationOrder": 53,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <facet name=\"Template\"/>\n\n    <facet name=\"TemplateBased\">\n      <schema name=\"templatesupport\"/>\n    </facet>\n\n    <doctype extends=\"Document\" name=\"TemplateSource\">\n      <schema name=\"common\"/>\n      <schema name=\"file\"/>\n      <schema name=\"dublincore\"/>\n      <schema name=\"uid\"/>\n      <schema name=\"documenttemplate\"/>\n      <facet name=\"Downloadable\"/>\n      <facet name=\"Versionable\"/>\n      <facet name=\"Commentable\"/>\n      <facet name=\"HasRelatedText\"/>\n      <facet name=\"Template\"/>\n    </doctype>\n\n    <doctype extends=\"File\" name=\"TemplateBasedFile\">\n      <facet name=\"TemplateBased\"/>\n    </doctype>\n\n    <doctype append=\"true\" name=\"Folder\">\n      <subtypes>\n        <type>TemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype append=\"true\" name=\"Workspace\">\n      <subtypes>\n        <type>TemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype append=\"true\" name=\"TemplateRoot\">\n      <subtypes>\n        <type>TemplateSource</type>\n      </subtypes>\n    </doctype>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.doctypes",
          "name": "org.nuxeo.platform.TemplateSources.doctypes",
          "requirements": [
            "org.nuxeo.ecm.core.CoreExtensions"
          ],
          "resolutionOrder": 874,
          "services": [],
          "startOrder": 703,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.doctypes\">\n\n  <require>org.nuxeo.ecm.core.CoreExtensions</require>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"schema\">\n    <schema name=\"documenttemplate\" src=\"schemas/documenttemplate.xsd\"\n      prefix=\"tmpl\" />\n    <schema name=\"templatesupport\" src=\"schemas/templatesupport.xsd\"\n      prefix=\"nxts\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"doctype\">\n\n    <facet name=\"Template\" />\n\n    <facet name=\"TemplateBased\">\n      <schema name=\"templatesupport\" />\n    </facet>\n\n    <doctype name=\"TemplateSource\" extends=\"Document\">\n      <schema name=\"common\"/>\n      <schema name=\"file\"/>\n      <schema name=\"dublincore\"/>\n      <schema name=\"uid\"/>\n      <schema name=\"documenttemplate\" />\n      <facet name=\"Downloadable\"/>\n      <facet name=\"Versionable\"/>\n      <facet name=\"Commentable\"/>\n      <facet name=\"HasRelatedText\"/>\n      <facet name=\"Template\" />\n    </doctype>\n\n    <doctype name=\"TemplateBasedFile\" extends=\"File\">\n      <facet name=\"TemplateBased\" />\n    </doctype>\n\n    <doctype name=\"Folder\" append=\"true\">\n      <subtypes>\n        <type>TemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype name=\"Workspace\" append=\"true\">\n      <subtypes>\n        <type>TemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype name=\"TemplateRoot\" append=\"true\">\n      <subtypes>\n        <type>TemplateSource</type>\n      </subtypes>\n    </doctype>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/core-types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.types.TypeService--types",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.types.contrib/Contributions/org.nuxeo.platform.TemplateSources.types.contrib--types",
              "id": "org.nuxeo.platform.TemplateSources.types.contrib--types",
              "registrationOrder": 12,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.types.TypeService",
                "name": "org.nuxeo.ecm.platform.types.TypeService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.platform.types.TypeService\">\n\n    <type coretype=\"TemplateSource\" id=\"TemplateSource\">\n      <label>TemplateSource</label>\n      <icon>/icons/sourcetemplate.png</icon>\n      <bigIcon>/icons/sourcetemplate_100.png</bigIcon>\n      <default-view>view_documents</default-view>\n      <category>SimpleDocument</category>\n     <layouts mode=\"create\">\n       <layout>heading</layout>\n       <layout>templateOptionsWizard</layout>\n       <layout>templateOptions</layout>\n       <layout>fileWithoutTemplate</layout>\n      </layouts>\n      <layouts mode=\"view\">\n        <layout>heading</layout>\n        <layout>templateOptions</layout>\n        <layout>templateParams</layout>\n      </layouts>\n      <layouts mode=\"edit\">\n        <layout>heading</layout>\n        <!-- <layout>templateOptions</layout>  -->\n        <layout>fileWithoutTemplate</layout>\n      </layouts>\n    </type>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.types.contrib",
          "name": "org.nuxeo.platform.TemplateSources.types.contrib",
          "requirements": [],
          "resolutionOrder": 875,
          "services": [],
          "startOrder": 713,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.types.contrib\">\n\n  <extension target=\"org.nuxeo.ecm.platform.types.TypeService\"\n    point=\"types\">\n\n    <type id=\"TemplateSource\" coretype=\"TemplateSource\">\n      <label>TemplateSource</label>\n      <icon>/icons/sourcetemplate.png</icon>\n      <bigIcon>/icons/sourcetemplate_100.png</bigIcon>\n      <default-view>view_documents</default-view>\n      <category>SimpleDocument</category>\n     <layouts mode=\"create\">\n       <layout>heading</layout>\n       <layout>templateOptionsWizard</layout>\n       <layout>templateOptions</layout>\n       <layout>fileWithoutTemplate</layout>\n      </layouts>\n      <layouts mode=\"view\">\n        <layout>heading</layout>\n        <layout>templateOptions</layout>\n        <layout>templateParams</layout>\n      </layouts>\n      <layouts mode=\"edit\">\n        <layout>heading</layout>\n        <!-- <layout>templateOptions</layout>  -->\n        <layout>fileWithoutTemplate</layout>\n      </layouts>\n    </type>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.lifecycle.LifeCycleService--types",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.lifecycle.contrib/Contributions/org.nuxeo.platform.TemplateSources.lifecycle.contrib--types",
              "id": "org.nuxeo.platform.TemplateSources.lifecycle.contrib--types",
              "registrationOrder": 21,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "name": "org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\">\n    <types>\n      <type name=\"TemplateSource\">default</type>\n      <type name=\"TemplateBasedFile\">default</type>\n    </types>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.lifecycle.contrib",
          "name": "org.nuxeo.platform.TemplateSources.lifecycle.contrib",
          "requirements": [],
          "resolutionOrder": 876,
          "services": [],
          "startOrder": 707,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.lifecycle.contrib\">\n\n  <extension target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\"\n    point=\"types\">\n    <types>\n      <type name=\"TemplateSource\">default</type>\n      <type name=\"TemplateBasedFile\">default</type>\n    </types>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/life-cycle-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.template.service.TemplateProcessorComponent",
          "documentation": "\n    Template processor service that is used to configure DocumentModel\n    rendering via template (ex: merge DocumentModel with a MSWord or\n    OpenOffice template file).\n\n    <p>It support an ExtensionPoint to contribute template\n      processors.</p>\n\n\n    @version 1.0\n    @author\n    <a href=\"mailto:tdelprat@nuxeo.com\">Tiry</a>\n",
          "documentationHtml": "<p>\nTemplate processor service that is used to configure DocumentModel\nrendering via template (ex: merge DocumentModel with a MSWord or\nOpenOffice template file).\n</p><p>\n</p><p>It support an ExtensionPoint to contribute template\nprocessors.</p>\n<p>\n&#64;version 1.0\n</p><p>\n<a href=\"mailto:tdelprat&#64;nuxeo.com\">Tiry</a></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.template.service.TemplateProcessorComponent",
              "descriptors": [
                "org.nuxeo.template.api.descriptor.TemplateProcessorDescriptor"
              ],
              "documentation": "<p>\n      Extension allowing one to register a new TemplateProcessor.\n      </p>\n<p>\n\n      A TemplateProcessor is a class associated with a format (mime-type or\n      extension) and that can be used to render a DocumentModel via type\n      type of template.\n\n      For instance :\n      </p>\n<code>\n    <templateProcessor\n        class=\"org.nuxeo.template.processors.xdocreport.XDocReportProcessor\"\n        default=\"true\" label=\"XDocReport processor\" name=\"XDocReportProcessor\">\n        <supportedMimeType>application/vnd.oasis.opendocument.text</supportedMimeType>\n        <supportedMimeType>application/vnd.openxmlformats-officedocument.wordprocessingml.document</supportedMimeType>\n        <supportedExtension>odt</supportedExtension>\n        <supportedExtension>docx</supportedExtension>\n    </templateProcessor>\n</code>\n",
              "documentationHtml": "<p>\n</p><p>\nExtension allowing one to register a new TemplateProcessor.\n</p>\n<p>\n</p><p>\nA TemplateProcessor is a class associated with a format (mime-type or\nextension) and that can be used to render a DocumentModel via type\ntype of template.\n</p><p>\nFor instance :\n</p>\n<p></p><pre><code>    &lt;templateProcessor\n        class&#61;&#34;org.nuxeo.template.processors.xdocreport.XDocReportProcessor&#34;\n        default&#61;&#34;true&#34; label&#61;&#34;XDocReport processor&#34; name&#61;&#34;XDocReportProcessor&#34;&gt;\n        &lt;supportedMimeType&gt;application/vnd.oasis.opendocument.text&lt;/supportedMimeType&gt;\n        &lt;supportedMimeType&gt;application/vnd.openxmlformats-officedocument.wordprocessingml.document&lt;/supportedMimeType&gt;\n        &lt;supportedExtension&gt;odt&lt;/supportedExtension&gt;\n        &lt;supportedExtension&gt;docx&lt;/supportedExtension&gt;\n    &lt;/templateProcessor&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.TemplateProcessorComponent/ExtensionPoints/org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "id": "org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "label": "processor (org.nuxeo.template.service.TemplateProcessorComponent)",
              "name": "processor",
              "version": "2021.57.3"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.template.service.TemplateProcessorComponent",
              "descriptors": [
                "org.nuxeo.template.api.descriptor.ContextExtensionFactoryDescriptor"
              ],
              "documentation": "<p>\n      Extension allowing to register a new ContentExtensionFactory that will be used to add custom objects inside the rendering context.\n      </p>\n<code/>\n",
              "documentationHtml": "<p>\n</p><p>\nExtension allowing to register a new ContentExtensionFactory that will be used to add custom objects inside the rendering context.\n</p>\n<code></code>",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.TemplateProcessorComponent/ExtensionPoints/org.nuxeo.template.service.TemplateProcessorComponent--contextExtension",
              "id": "org.nuxeo.template.service.TemplateProcessorComponent--contextExtension",
              "label": "contextExtension (org.nuxeo.template.service.TemplateProcessorComponent)",
              "name": "contextExtension",
              "version": "2021.57.3"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.template.service.TemplateProcessorComponent",
              "descriptors": [
                "org.nuxeo.template.api.descriptor.OutputFormatDescriptor"
              ],
              "documentation": "<p>\n        Extension allowing to register a output formats for rendered template. If no\n        chainId is specified, the ConvertBlob operation will be called with\n        the mime-type as parameter.\n      </p>\n<code>\n    <outputFormat id=\"doc\" label=\"DOC\" mimetype=\"application/msword\"/>\n    <outputFormat chainId=\"deckJs2PDF\" id=\"deckJsToPDF\"\n        label=\"PDF (from DeckJS)\" mimetype=\"application/pdf\"/>\n</code>\n",
              "documentationHtml": "<p>\n</p><p>\nExtension allowing to register a output formats for rendered template. If no\nchainId is specified, the ConvertBlob operation will be called with\nthe mime-type as parameter.\n</p>\n<p></p><pre><code>    &lt;outputFormat id&#61;&#34;doc&#34; label&#61;&#34;DOC&#34; mimetype&#61;&#34;application/msword&#34;/&gt;\n    &lt;outputFormat chainId&#61;&#34;deckJs2PDF&#34; id&#61;&#34;deckJsToPDF&#34;\n        label&#61;&#34;PDF (from DeckJS)&#34; mimetype&#61;&#34;application/pdf&#34;/&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.TemplateProcessorComponent/ExtensionPoints/org.nuxeo.template.service.TemplateProcessorComponent--outputFormat",
              "id": "org.nuxeo.template.service.TemplateProcessorComponent--outputFormat",
              "label": "outputFormat (org.nuxeo.template.service.TemplateProcessorComponent)",
              "name": "outputFormat",
              "version": "2021.57.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.TemplateProcessorComponent",
          "name": "org.nuxeo.template.service.TemplateProcessorComponent",
          "requirements": [],
          "resolutionOrder": 877,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.template.service.TemplateProcessorComponent",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.TemplateProcessorComponent/Services/org.nuxeo.template.api.TemplateProcessorService",
              "id": "org.nuxeo.template.api.TemplateProcessorService",
              "overriden": false,
              "version": "2021.57.3"
            }
          ],
          "startOrder": 946,
          "version": "2021.57.3",
          "xmlFileContent": "<component name=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n  <documentation>\n    Template processor service that is used to configure DocumentModel\n    rendering via template (ex: merge DocumentModel with a MSWord or\n    OpenOffice template file).\n\n    <p>It support an ExtensionPoint to contribute template\n      processors.</p>\n\n    @version 1.0\n    @author\n    <a href=\"mailto:tdelprat@nuxeo.com\">Tiry</a>\n  </documentation>\n\n  <implementation class=\"org.nuxeo.template.service.TemplateProcessorComponent\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.template.api.TemplateProcessorService\" />\n  </service>\n\n  <extension-point name=\"processor\">\n\n    <documentation>\n\n      <p>\n      Extension allowing one to register a new TemplateProcessor.\n      </p>\n      <p>\n\n      A TemplateProcessor is a class associated with a format (mime-type or\n      extension) and that can be used to render a DocumentModel via type\n      type of template.\n\n      For instance :\n      </p>\n\n      <code>\n        <templateProcessor name=\"XDocReportProcessor\"\n          label=\"XDocReport processor\" default=\"true\"\n          class=\"org.nuxeo.template.processors.xdocreport.XDocReportProcessor\">\n          <supportedMimeType>application/vnd.oasis.opendocument.text</supportedMimeType>\n          <supportedMimeType>application/vnd.openxmlformats-officedocument.wordprocessingml.document</supportedMimeType>\n          <supportedExtension>odt</supportedExtension>\n          <supportedExtension>docx</supportedExtension>\n        </templateProcessor>\n\n      </code>\n\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.template.api.descriptor.TemplateProcessorDescriptor\" />\n\n  </extension-point>\n\n\n  <extension-point name=\"contextExtension\">\n\n    <documentation>\n\n      <p>\n      Extension allowing to register a new ContentExtensionFactory that will be used to add custom objects inside the rendering context.\n      </p>\n\n      <code>\n\n\n      </code>\n\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.template.api.descriptor.ContextExtensionFactoryDescriptor\" />\n\n  </extension-point>\n\n\n  <extension-point name=\"outputFormat\">\n\n    <documentation>\n      <p>\n        Extension allowing to register a output formats for rendered template. If no\n        chainId is specified, the ConvertBlob operation will be called with\n        the mime-type as parameter.\n      </p>\n      <code>\n        <outputFormat id=\"doc\" label=\"DOC\" mimetype=\"application/msword\"/>\n        <outputFormat id=\"deckJsToPDF\" label=\"PDF (from DeckJS)\" chainId=\"deckJs2PDF\" mimetype=\"application/pdf\"/>\n      </code>\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.template.api.descriptor.OutputFormatDescriptor\" />\n\n  </extension-point>\n\n</component>",
          "xmlFileName": "/OSGI-INF/templateprocessor-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "Freemarker based template processor\n",
              "documentationHtml": "<p>\nFreemarker based template processor</p>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--processor",
              "id": "org.nuxeo.template.service.defaultContrib--processor",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"processor\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>Freemarker based template processor</documentation>\n\n    <templateProcessor class=\"org.nuxeo.template.processors.fm.FreeMarkerProcessor\" default=\"false\" label=\"Raw Freemarker\" name=\"Freemarker\">\n      <supportedMimeType>text/x-freemarker</supportedMimeType>\n      <supportedExtension>ftl</supportedExtension>\n    </templateProcessor>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "XSLT template processor\n",
              "documentationHtml": "<p>\nXSLT template processor</p>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--processor1",
              "id": "org.nuxeo.template.service.defaultContrib--processor1",
              "registrationOrder": 1,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"processor\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>XSLT template processor</documentation>\n\n    <templateProcessor class=\"org.nuxeo.template.processors.xslt.XSLTProcessor\" default=\"false\" label=\"Raw XSLT Processor\" name=\"XSLTProcessor\">\n      <supportedMimeType>text/xml</supportedMimeType>\n      <supportedExtension>xml</supportedExtension>\n      <supportedExtension>xsl</supportedExtension>\n      <supportedExtension>xslt</supportedExtension>\n    </templateProcessor>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "Identity processor\n",
              "documentationHtml": "<p>\nIdentity processor</p>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--processor2",
              "id": "org.nuxeo.template.service.defaultContrib--processor2",
              "registrationOrder": 2,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"processor\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>Identity processor</documentation>\n\n    <templateProcessor class=\"org.nuxeo.template.processors.IdentityProcessor\" default=\"false\" label=\"Identity\" name=\"Identity\">\n    </templateProcessor>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "\n      Adds utility functions in the context\n      <ul>\n    <li>functions.getVocabularyTranslatedLabel(vocname, key, lang)</li>\n    <li>functions.getVocabularyLabel(vocname, key)</li>\n    <li>functions.getVocabularyLabel(vocname, key)</li>\n    <li>functions.formatDate(calendar)</li>\n    <li>functions.formatDateTime(calendar)</li>\n    <li>functions.formatTime(calendar)</li>\n    <li>functions.getNuxeoPrincipal(username)</li>\n</ul>\n",
              "documentationHtml": "<p>\nAdds utility functions in the context\n</p><ul><li>functions.getVocabularyTranslatedLabel(vocname, key, lang)</li><li>functions.getVocabularyLabel(vocname, key)</li><li>functions.getVocabularyLabel(vocname, key)</li><li>functions.formatDate(calendar)</li><li>functions.formatDateTime(calendar)</li><li>functions.formatTime(calendar)</li><li>functions.getNuxeoPrincipal(username)</li></ul>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--contextExtension",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--contextExtension",
              "id": "org.nuxeo.template.service.defaultContrib--contextExtension",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"contextExtension\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>\n      Adds utility functions in the context\n      <ul>\n        <li>functions.getVocabularyTranslatedLabel(vocname, key, lang)</li>\n        <li>functions.getVocabularyLabel(vocname, key)</li>\n        <li>functions.getVocabularyLabel(vocname, key)</li>\n        <li>functions.formatDate(calendar)</li>\n        <li>functions.formatDateTime(calendar)</li>\n        <li>functions.formatTime(calendar)</li>\n        <li>functions.getNuxeoPrincipal(username)</li>\n      </ul>\n    </documentation>\n\n    <contextFactory class=\"org.nuxeo.template.context.extensions.FunctionsExtensionFactory\" name=\"functions\">\n     <aliasName>fn</aliasName>\n     <aliasName>Fn</aliasName>\n    </contextFactory>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "Adds audit infos in the context\n      <ul>\n    <li>auditEntries</li>\n</ul>\n",
              "documentationHtml": "<p>\nAdds audit infos in the context\n</p><ul><li>auditEntries</li></ul>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--contextExtension",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--contextExtension1",
              "id": "org.nuxeo.template.service.defaultContrib--contextExtension1",
              "registrationOrder": 1,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"contextExtension\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>Adds audit infos in the context\n      <ul>\n        <li>auditEntries</li>\n      </ul>\n    </documentation>\n\n    <contextFactory class=\"org.nuxeo.template.context.extensions.AuditExtensionFactory\" name=\"auditEntries\">\n    </contextFactory>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "Adds Repository features in the context\n      <ul>\n    <li>core.getParent()</li>\n    <li>core.getChildren()</li>\n</ul>\n",
              "documentationHtml": "<p>\nAdds Repository features in the context\n</p><ul><li>core.getParent()</li><li>core.getChildren()</li></ul>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--contextExtension",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--contextExtension2",
              "id": "org.nuxeo.template.service.defaultContrib--contextExtension2",
              "registrationOrder": 2,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"contextExtension\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>Adds Repository features in the context\n      <ul>\n        <li>core.getParent()</li>\n        <li>core.getChildren()</li>\n      </ul>\n    </documentation>\n\n    <contextFactory class=\"org.nuxeo.template.context.extensions.CoreExtensionFactory\" name=\"core\">\n    </contextFactory>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "Adds outputFormat for the following mime type\n      <ul>\n    <li>pdf</li>\n    <li>odt</li>\n    <li>doc</li>\n    <li>docx</li>\n</ul>\n",
              "documentationHtml": "<p>\nAdds outputFormat for the following mime type\n</p><ul><li>pdf</li><li>odt</li><li>doc</li><li>docx</li></ul>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--outputFormat",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib/Contributions/org.nuxeo.template.service.defaultContrib--outputFormat",
              "id": "org.nuxeo.template.service.defaultContrib--outputFormat",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"outputFormat\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>Adds outputFormat for the following mime type\n      <ul>\n        <li>pdf</li>\n        <li>odt</li>\n        <li>doc</li>\n        <li>docx</li>\n      </ul>\n    </documentation>\n\n    <outputFormat id=\"pdf\" label=\"PDF\" mimetype=\"application/pdf\"/>\n    <outputFormat id=\"odt\" label=\"ODT\" mimetype=\"application/vnd.oasis.opendocument.text\"/>\n    <outputFormat id=\"doc\" label=\"DOC\" mimetype=\"application/msword\"/>\n    <outputFormat id=\"docx\" label=\"DOCX\" mimetype=\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.service.defaultContrib",
          "name": "org.nuxeo.template.service.defaultContrib",
          "requirements": [],
          "resolutionOrder": 878,
          "services": [],
          "startOrder": 761,
          "version": "2021.57.3",
          "xmlFileContent": "<component\n  name=\"org.nuxeo.template.service.defaultContrib\">\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"processor\">\n\n    <documentation>Freemarker based template processor</documentation>\n\n    <templateProcessor name=\"Freemarker\" label=\"Raw Freemarker\" default=\"false\" class=\"org.nuxeo.template.processors.fm.FreeMarkerProcessor\">\n      <supportedMimeType>text/x-freemarker</supportedMimeType>\n      <supportedExtension>ftl</supportedExtension>\n    </templateProcessor>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"processor\">\n\n    <documentation>XSLT template processor</documentation>\n\n    <templateProcessor name=\"XSLTProcessor\" label=\"Raw XSLT Processor\" default=\"false\" class=\"org.nuxeo.template.processors.xslt.XSLTProcessor\">\n      <supportedMimeType>text/xml</supportedMimeType>\n      <supportedExtension>xml</supportedExtension>\n      <supportedExtension>xsl</supportedExtension>\n      <supportedExtension>xslt</supportedExtension>\n    </templateProcessor>\n\n  </extension>\n\n <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"processor\">\n\n    <documentation>Identity processor</documentation>\n\n    <templateProcessor name=\"Identity\" label=\"Identity\" default=\"false\" class=\"org.nuxeo.template.processors.IdentityProcessor\">\n    </templateProcessor>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"contextExtension\">\n\n    <documentation>\n      Adds utility functions in the context\n      <ul>\n        <li>functions.getVocabularyTranslatedLabel(vocname, key, lang)</li>\n        <li>functions.getVocabularyLabel(vocname, key)</li>\n        <li>functions.getVocabularyLabel(vocname, key)</li>\n        <li>functions.formatDate(calendar)</li>\n        <li>functions.formatDateTime(calendar)</li>\n        <li>functions.formatTime(calendar)</li>\n        <li>functions.getNuxeoPrincipal(username)</li>\n      </ul>\n    </documentation>\n\n    <contextFactory name=\"functions\" class=\"org.nuxeo.template.context.extensions.FunctionsExtensionFactory\">\n     <aliasName>fn</aliasName>\n     <aliasName>Fn</aliasName>\n    </contextFactory>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"contextExtension\">\n\n    <documentation>Adds audit infos in the context\n      <ul>\n        <li>auditEntries</li>\n      </ul>\n    </documentation>\n\n    <contextFactory name=\"auditEntries\" class=\"org.nuxeo.template.context.extensions.AuditExtensionFactory\">\n    </contextFactory>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"contextExtension\">\n\n    <documentation>Adds Repository features in the context\n      <ul>\n        <li>core.getParent()</li>\n        <li>core.getChildren()</li>\n      </ul>\n    </documentation>\n\n    <contextFactory name=\"core\" class=\"org.nuxeo.template.context.extensions.CoreExtensionFactory\">\n    </contextFactory>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"outputFormat\">\n\n    <documentation>Adds outputFormat for the following mime type\n      <ul>\n        <li>pdf</li>\n        <li>odt</li>\n        <li>doc</li>\n        <li>docx</li>\n      </ul>\n    </documentation>\n\n    <outputFormat id=\"pdf\" label=\"PDF\" mimetype=\"application/pdf\"/>\n    <outputFormat id=\"odt\" label=\"ODT\" mimetype=\"application/vnd.oasis.opendocument.text\"/>\n    <outputFormat id=\"doc\" label=\"DOC\" mimetype=\"application/msword\"/>\n    <outputFormat id=\"docx\" label=\"DOCX\" mimetype=\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\"/>\n  </extension>\n\n </component>",
          "xmlFileName": "/OSGI-INF/templateprocessor-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.adapterContrib/Contributions/org.nuxeo.platform.TemplateSources.adapterContrib--adapters",
              "id": "org.nuxeo.platform.TemplateSources.adapterContrib--adapters",
              "registrationOrder": 30,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentAdapterService",
                "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"adapters\" target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\">\n\n    <adapter class=\"org.nuxeo.template.api.adapters.TemplateBasedDocument\" factory=\"org.nuxeo.template.adapters.TemplateAdapterFactory\"/>\n\n    <adapter class=\"org.nuxeo.template.api.adapters.TemplateSourceDocument\" factory=\"org.nuxeo.template.adapters.TemplateAdapterFactory\"/>\n\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.adapterContrib",
          "name": "org.nuxeo.platform.TemplateSources.adapterContrib",
          "requirements": [],
          "resolutionOrder": 879,
          "services": [],
          "startOrder": 702,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.platform.TemplateSources.adapterContrib\">\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\"\n    point=\"adapters\">\n\n    <adapter\n      class=\"org.nuxeo.template.api.adapters.TemplateBasedDocument\" factory=\"org.nuxeo.template.adapters.TemplateAdapterFactory\" />\n\n    <adapter\n      class=\"org.nuxeo.template.api.adapters.TemplateSourceDocument\" factory=\"org.nuxeo.template.adapters.TemplateAdapterFactory\" />\n\n\n  </extension>\n\n</component>",
          "xmlFileName": "/OSGI-INF/adapter-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.event.EventServiceComponent--listener",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.listener/Contributions/org.nuxeo.platform.TemplateSources.listener--listener",
              "id": "org.nuxeo.platform.TemplateSources.listener--listener",
              "registrationOrder": 50,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.event.EventServiceComponent",
                "name": "org.nuxeo.ecm.core.event.EventServiceComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"listener\" target=\"org.nuxeo.ecm.core.event.EventServiceComponent\">\n    <listener async=\"false\" class=\"org.nuxeo.template.listeners.TemplateInitListener\" name=\"documenttemplate-init\" postCommit=\"false\" priority=\"500\">\n      <event>aboutToCreate</event>\n      <event>beforeDocumentModification</event>\n    </listener>\n\n    <listener async=\"false\" class=\"org.nuxeo.template.listeners.TemplateDeletionGuard\" name=\"documenttemplate-deletionguard\" postCommit=\"false\" priority=\"500\">\n      <event>aboutToRemove</event>\n    </listener>\n\n    <listener async=\"true\" class=\"org.nuxeo.template.listeners.TemplateTypeBindingListener\" name=\"documenttemplate-type-binding\" postCommit=\"true\" priority=\"500\">\n      <event>documentCreated</event>\n      <event>documentModified</event>\n    </listener>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.listener",
          "name": "org.nuxeo.platform.TemplateSources.listener",
          "requirements": [],
          "resolutionOrder": 880,
          "services": [],
          "startOrder": 708,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.listener\">\n\n  <extension target=\"org.nuxeo.ecm.core.event.EventServiceComponent\"\n    point=\"listener\">\n    <listener name=\"documenttemplate-init\" async=\"false\"\n      postCommit=\"false\" priority=\"500\"\n      class=\"org.nuxeo.template.listeners.TemplateInitListener\">\n      <event>aboutToCreate</event>\n      <event>beforeDocumentModification</event>\n    </listener>\n\n    <listener name=\"documenttemplate-deletionguard\" async=\"false\"\n      postCommit=\"false\" priority=\"500\"\n      class=\"org.nuxeo.template.listeners.TemplateDeletionGuard\">\n      <event>aboutToRemove</event>\n    </listener>\n\n    <listener name=\"documenttemplate-type-binding\" async=\"true\" postCommit=\"true\" priority=\"500\"\n      class=\"org.nuxeo.template.listeners.TemplateTypeBindingListener\">\n      <event>documentCreated</event>\n      <event>documentModified</event>\n    </listener>\n\n  </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/listener-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.convert.service.ConversionServiceImpl--converter",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.ecm.platform.templates.convert.plugins/Contributions/org.nuxeo.ecm.platform.templates.convert.plugins--converter",
              "id": "org.nuxeo.ecm.platform.templates.convert.plugins--converter",
              "registrationOrder": 9,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.convert.service.ConversionServiceImpl",
                "name": "org.nuxeo.ecm.core.convert.service.ConversionServiceImpl",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"converter\" target=\"org.nuxeo.ecm.core.convert.service.ConversionServiceImpl\">\n\n   <converter class=\"org.nuxeo.ecm.platform.convert.plugins.LibreOfficeConverter\" name=\"any2odt\">\n      <destinationMimeType>application/vnd.oasis.opendocument.text</destinationMimeType>\n\n      <sourceMimeType>text/x-web-markdown</sourceMimeType>\n      <sourceMimeType>text/xml</sourceMimeType>\n      <sourceMimeType>text/html</sourceMimeType>\n      <sourceMimeType>text/plain</sourceMimeType>\n      <sourceMimeType>text/rtf</sourceMimeType>\n\n      <!-- Microsoft office documents -->\n      <sourceMimeType>application/msword</sourceMimeType>\n\n      <!-- Microsoft office 2007 documents -->\n      <sourceMimeType>\n        application/vnd.openxmlformats-officedocument.wordprocessingml.document\n      </sourceMimeType>\n\n      <!-- OpenOffice.org 1.x documents -->\n      <sourceMimeType>application/vnd.sun.xml.writer</sourceMimeType>\n      <sourceMimeType>application/vnd.sun.xml.writer.template</sourceMimeType>\n\n      <!-- OpenOffice.org 2.x documents -->\n      <sourceMimeType>application/vnd.oasis.opendocument.text</sourceMimeType>\n      <sourceMimeType>\n        application/vnd.oasis.opendocument.text-template\n      </sourceMimeType>\n\n      <!-- WordPerfect -->\n      <sourceMimeType>application/wordperfect</sourceMimeType>\n\n      <parameters>\n        <parameter name=\"CommandLineName\">soffice</parameter>\n        <parameter name=\"format\">odt</parameter>\n      </parameters>\n   </converter>\n\n   <converter class=\"org.nuxeo.ecm.platform.convert.plugins.LibreOfficeConverter\" name=\"any2docx\">\n\n      <destinationMimeType>application/vnd.openxmlformats-officedocument.wordprocessingml.document</destinationMimeType>\n\n      <sourceMimeType>text/xml</sourceMimeType>\n      <sourceMimeType>text/html</sourceMimeType>\n      <sourceMimeType>text/plain</sourceMimeType>\n      <sourceMimeType>text/rtf</sourceMimeType>\n\n      <!-- Microsoft office documents -->\n      <sourceMimeType>application/msword</sourceMimeType>\n\n      <!-- Microsoft office 2007 documents -->\n      <sourceMimeType>\n        application/vnd.openxmlformats-officedocument.wordprocessingml.document\n      </sourceMimeType>\n\n      <!-- OpenOffice.org 1.x documents -->\n      <sourceMimeType>application/vnd.sun.xml.writer</sourceMimeType>\n      <sourceMimeType>application/vnd.sun.xml.writer.template</sourceMimeType>\n\n      <!-- OpenOffice.org 2.x documents -->\n      <sourceMimeType>application/vnd.oasis.opendocument.text</sourceMimeType>\n      <sourceMimeType>\n        application/vnd.oasis.opendocument.text-template\n      </sourceMimeType>\n\n      <!-- WordPerfect -->\n      <sourceMimeType>application/wordperfect</sourceMimeType>\n\n      <parameters>\n        <parameter name=\"CommandLineName\">soffice</parameter>\n        <parameter name=\"format\">docx</parameter>\n      </parameters>\n   </converter>\n\n   <converter class=\"org.nuxeo.ecm.platform.convert.plugins.LibreOfficeConverter\" name=\"any2doc\">\n\n      <destinationMimeType>application/msword</destinationMimeType>\n\n      <sourceMimeType>text/xml</sourceMimeType>\n      <sourceMimeType>text/html</sourceMimeType>\n      <sourceMimeType>text/plain</sourceMimeType>\n      <sourceMimeType>text/rtf</sourceMimeType>\n\n      <!-- Microsoft office documents -->\n      <sourceMimeType>application/msword</sourceMimeType>\n\n      <!-- Microsoft office 2007 documents -->\n      <sourceMimeType>\n        application/vnd.openxmlformats-officedocument.wordprocessingml.document\n      </sourceMimeType>\n\n      <!-- OpenOffice.org 1.x documents -->\n      <sourceMimeType>application/vnd.sun.xml.writer</sourceMimeType>\n      <sourceMimeType>application/vnd.sun.xml.writer.template</sourceMimeType>\n\n      <!-- OpenOffice.org 2.x documents -->\n      <sourceMimeType>application/vnd.oasis.opendocument.text</sourceMimeType>\n      <sourceMimeType>\n        application/vnd.oasis.opendocument.text-template\n      </sourceMimeType>\n\n      <!-- WordPerfect -->\n      <sourceMimeType>application/wordperfect</sourceMimeType>\n\n      <parameters>\n        <parameter name=\"CommandLineName\">soffice</parameter>\n        <parameter name=\"format\">doc</parameter>\n      </parameters>\n   </converter>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.ecm.platform.templates.convert.plugins",
          "name": "org.nuxeo.ecm.platform.templates.convert.plugins",
          "requirements": [
            "org.nuxeo.ecm.platform.convert.plugins"
          ],
          "resolutionOrder": 881,
          "services": [],
          "startOrder": 513,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.templates.convert.plugins\">\n\n  <require>org.nuxeo.ecm.platform.convert.plugins</require>\n\n  <extension target=\"org.nuxeo.ecm.core.convert.service.ConversionServiceImpl\"\n    point=\"converter\">\n\n   <converter name=\"any2odt\" class=\"org.nuxeo.ecm.platform.convert.plugins.LibreOfficeConverter\">\n      <destinationMimeType>application/vnd.oasis.opendocument.text</destinationMimeType>\n\n      <sourceMimeType>text/x-web-markdown</sourceMimeType>\n      <sourceMimeType>text/xml</sourceMimeType>\n      <sourceMimeType>text/html</sourceMimeType>\n      <sourceMimeType>text/plain</sourceMimeType>\n      <sourceMimeType>text/rtf</sourceMimeType>\n\n      <!-- Microsoft office documents -->\n      <sourceMimeType>application/msword</sourceMimeType>\n\n      <!-- Microsoft office 2007 documents -->\n      <sourceMimeType>\n        application/vnd.openxmlformats-officedocument.wordprocessingml.document\n      </sourceMimeType>\n\n      <!-- OpenOffice.org 1.x documents -->\n      <sourceMimeType>application/vnd.sun.xml.writer</sourceMimeType>\n      <sourceMimeType>application/vnd.sun.xml.writer.template</sourceMimeType>\n\n      <!-- OpenOffice.org 2.x documents -->\n      <sourceMimeType>application/vnd.oasis.opendocument.text</sourceMimeType>\n      <sourceMimeType>\n        application/vnd.oasis.opendocument.text-template\n      </sourceMimeType>\n\n      <!-- WordPerfect -->\n      <sourceMimeType>application/wordperfect</sourceMimeType>\n\n      <parameters>\n        <parameter name=\"CommandLineName\">soffice</parameter>\n        <parameter name=\"format\">odt</parameter>\n      </parameters>\n   </converter>\n\n   <converter name=\"any2docx\" class=\"org.nuxeo.ecm.platform.convert.plugins.LibreOfficeConverter\">\n\n      <destinationMimeType>application/vnd.openxmlformats-officedocument.wordprocessingml.document</destinationMimeType>\n\n      <sourceMimeType>text/xml</sourceMimeType>\n      <sourceMimeType>text/html</sourceMimeType>\n      <sourceMimeType>text/plain</sourceMimeType>\n      <sourceMimeType>text/rtf</sourceMimeType>\n\n      <!-- Microsoft office documents -->\n      <sourceMimeType>application/msword</sourceMimeType>\n\n      <!-- Microsoft office 2007 documents -->\n      <sourceMimeType>\n        application/vnd.openxmlformats-officedocument.wordprocessingml.document\n      </sourceMimeType>\n\n      <!-- OpenOffice.org 1.x documents -->\n      <sourceMimeType>application/vnd.sun.xml.writer</sourceMimeType>\n      <sourceMimeType>application/vnd.sun.xml.writer.template</sourceMimeType>\n\n      <!-- OpenOffice.org 2.x documents -->\n      <sourceMimeType>application/vnd.oasis.opendocument.text</sourceMimeType>\n      <sourceMimeType>\n        application/vnd.oasis.opendocument.text-template\n      </sourceMimeType>\n\n      <!-- WordPerfect -->\n      <sourceMimeType>application/wordperfect</sourceMimeType>\n\n      <parameters>\n        <parameter name=\"CommandLineName\">soffice</parameter>\n        <parameter name=\"format\">docx</parameter>\n      </parameters>\n   </converter>\n\n   <converter name=\"any2doc\" class=\"org.nuxeo.ecm.platform.convert.plugins.LibreOfficeConverter\">\n\n      <destinationMimeType>application/msword</destinationMimeType>\n\n      <sourceMimeType>text/xml</sourceMimeType>\n      <sourceMimeType>text/html</sourceMimeType>\n      <sourceMimeType>text/plain</sourceMimeType>\n      <sourceMimeType>text/rtf</sourceMimeType>\n\n      <!-- Microsoft office documents -->\n      <sourceMimeType>application/msword</sourceMimeType>\n\n      <!-- Microsoft office 2007 documents -->\n      <sourceMimeType>\n        application/vnd.openxmlformats-officedocument.wordprocessingml.document\n      </sourceMimeType>\n\n      <!-- OpenOffice.org 1.x documents -->\n      <sourceMimeType>application/vnd.sun.xml.writer</sourceMimeType>\n      <sourceMimeType>application/vnd.sun.xml.writer.template</sourceMimeType>\n\n      <!-- OpenOffice.org 2.x documents -->\n      <sourceMimeType>application/vnd.oasis.opendocument.text</sourceMimeType>\n      <sourceMimeType>\n        application/vnd.oasis.opendocument.text-template\n      </sourceMimeType>\n\n      <!-- WordPerfect -->\n      <sourceMimeType>application/wordperfect</sourceMimeType>\n\n      <parameters>\n        <parameter name=\"CommandLineName\">soffice</parameter>\n        <parameter name=\"format\">doc</parameter>\n      </parameters>\n   </converter>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/convert-service-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.mimetype.service.MimetypeRegistryService--mimetype",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.mimetype/Contributions/org.nuxeo.platform.TemplateSources.mimetype--mimetype",
              "id": "org.nuxeo.platform.TemplateSources.mimetype--mimetype",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.mimetype.service.MimetypeRegistryService",
                "name": "org.nuxeo.ecm.platform.mimetype.service.MimetypeRegistryService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"mimetype\" target=\"org.nuxeo.ecm.platform.mimetype.service.MimetypeRegistryService\">\n\n\t\t<mimetype binary=\"false\" iconPath=\"text.png\" normalized=\"text/x-freemarker\">\n\t\t\t<mimetypes>\n\t\t\t\t<mimetype>text/x-freemarker</mimetype>\n\t\t\t</mimetypes>\n\t\t\t<extensions>\n\t\t\t\t<extension>ftl</extension>\n\t\t\t</extensions>\n\t\t</mimetype>\n\t</extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.mimetype",
          "name": "org.nuxeo.platform.TemplateSources.mimetype",
          "requirements": [],
          "resolutionOrder": 882,
          "services": [],
          "startOrder": 709,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component\n\tname=\"org.nuxeo.platform.TemplateSources.mimetype\">\n\n\t<extension\n\t\ttarget=\"org.nuxeo.ecm.platform.mimetype.service.MimetypeRegistryService\"\n\t\tpoint=\"mimetype\">\n\n\t\t<mimetype normalized=\"text/x-freemarker\" binary=\"false\" iconPath=\"text.png\">\n\t\t\t<mimetypes>\n\t\t\t\t<mimetype>text/x-freemarker</mimetype>\n\t\t\t</mimetypes>\n\t\t\t<extensions>\n\t\t\t\t<extension>ftl</extension>\n\t\t\t</extensions>\n\t\t</mimetype>\n\t</extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/mimetype-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.rendition.service.RenditionService--renditionDefinitions",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.rendition.contrib/Contributions/org.nuxeo.platform.TemplateSources.rendition.contrib--renditionDefinitions",
              "id": "org.nuxeo.platform.TemplateSources.rendition.contrib--renditionDefinitions",
              "registrationOrder": 2,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.rendition.service.RenditionService",
                "name": "org.nuxeo.ecm.platform.rendition.service.RenditionService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"renditionDefinitions\" target=\"org.nuxeo.ecm.platform.rendition.service.RenditionService\">\n    <renditionDefinition class=\"org.nuxeo.template.rendition.TemplateBasedRenditionProvider\" enabled=\"true\" name=\"delivery\">\n      <icon>/icons/delivery.png</icon>\n      <label>label.rendition.delivery</label>\n    </renditionDefinition>\n    <renditionDefinition class=\"org.nuxeo.template.rendition.TemplateBasedRenditionProvider\" enabled=\"true\" name=\"webView\">\n      <icon>/icons/htmlView.png</icon>\n      <label>label.rendition.webView</label>\n    </renditionDefinition>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.rendition.contrib",
          "name": "org.nuxeo.platform.TemplateSources.rendition.contrib",
          "requirements": [
            "org.nuxeo.ecm.platform.rendition.contrib"
          ],
          "resolutionOrder": 883,
          "services": [],
          "startOrder": 712,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.rendition.contrib\">\n\n  <require>org.nuxeo.ecm.platform.rendition.contrib</require>\n\n  <extension target=\"org.nuxeo.ecm.platform.rendition.service.RenditionService\"\n    point=\"renditionDefinitions\">\n    <renditionDefinition name=\"delivery\" enabled=\"true\" class=\"org.nuxeo.template.rendition.TemplateBasedRenditionProvider\">\n      <icon>/icons/delivery.png</icon>\n      <label>label.rendition.delivery</label>\n    </renditionDefinition>\n    <renditionDefinition name=\"webView\" enabled=\"true\" class=\"org.nuxeo.template.rendition.TemplateBasedRenditionProvider\">\n      <icon>/icons/htmlView.png</icon>\n      <label>label.rendition.webView</label>\n    </renditionDefinition>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/rendition-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentation": "\n  Contribute Operation to encapsulate TemplateProcessor rendering features\n  @author Tiry (tdelprat@nuxeo.com)\n",
          "documentationHtml": "<p>\nContribute Operation to encapsulate TemplateProcessor rendering features\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.operation.OperationServiceComponent--operations",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.operations/Contributions/org.nuxeo.platform.TemplateSources.operations--operations",
              "id": "org.nuxeo.platform.TemplateSources.operations--operations",
              "registrationOrder": 37,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "name": "org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"operations\" target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n\n    <operation class=\"org.nuxeo.template.automation.RenderWithTemplateOperation\"/>\n    <operation class=\"org.nuxeo.template.automation.DetachTemplateOperation\"/>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.automation.scripting.internals.AutomationScriptingComponent--operation",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.operations/Contributions/org.nuxeo.platform.TemplateSources.operations--operation",
              "id": "org.nuxeo.platform.TemplateSources.operations--operation",
              "registrationOrder": 2,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.automation.scripting.internals.AutomationScriptingComponent",
                "name": "org.nuxeo.automation.scripting.internals.AutomationScriptingComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"operation\" target=\"org.nuxeo.automation.scripting.internals.AutomationScriptingComponent\">\n\n    <scriptedOperation id=\"javascript.FilterTemplatesByType\">\n      <inputType>document</inputType>\n      <outputType>documents</outputType>\n      <category>javascript</category>\n      <description>Filter templates according to the type of a given input document.</description>\n      <script><![CDATA[\n        function run(input, params) {\n          return Repository.Query(null, {\n            'query': 'select * from Document where ecm:mixinType = \"Template\" AND ecm:isTrashed = 0 AND tmpl:applicableTypes IN ( \"all\", \"' + input['type'] + '\") AND ecm:isVersion = 0'\n          });\n        }\n      ]]></script>\n    </scriptedOperation>\n\n    <scriptedOperation id=\"javascript.RenderPdf\">\n      <inputType>document</inputType>\n      <outputType>blob</outputType>\n      <category>javascript</category>\n      <param name=\"templateName\" type=\"string\"/>\n      <param name=\"attach\" type=\"boolean\"/>\n      <param name=\"templateData\" type=\"string\"/>\n      <description>Render a document with a given template and converts it to PDF.</description>\n      <script><![CDATA[\n        function run(input, params) {\n          var blob = TemplateProcessor.Render(input, {\n            'templateName': params.templateName,\n            'attach': params.attach || false,\n            'templateData': params.templateData || null\n          });\n          return Blob.RunConverter(blob, {'converter': 'any2pdf'});\n        }\n      ]]></script>\n    </scriptedOperation>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.operations",
          "name": "org.nuxeo.platform.TemplateSources.operations",
          "requirements": [],
          "resolutionOrder": 884,
          "services": [],
          "startOrder": 710,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.operations\" version=\"1.0\">\n\n  <documentation>\n  Contribute Operation to encapsulate TemplateProcessor rendering features\n  @author Tiry (tdelprat@nuxeo.com)</documentation>\n\n  <extension target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\"\n    point=\"operations\">\n\n    <operation\n      class=\"org.nuxeo.template.automation.RenderWithTemplateOperation\" />\n    <operation\n      class=\"org.nuxeo.template.automation.DetachTemplateOperation\" />\n\n  </extension>\n\n  <extension target=\"org.nuxeo.automation.scripting.internals.AutomationScriptingComponent\" point=\"operation\">\n\n    <scriptedOperation id=\"javascript.FilterTemplatesByType\">\n      <inputType>document</inputType>\n      <outputType>documents</outputType>\n      <category>javascript</category>\n      <description>Filter templates according to the type of a given input document.</description>\n      <script><![CDATA[\n        function run(input, params) {\n          return Repository.Query(null, {\n            'query': 'select * from Document where ecm:mixinType = \"Template\" AND ecm:isTrashed = 0 AND tmpl:applicableTypes IN ( \"all\", \"' + input['type'] + '\") AND ecm:isVersion = 0'\n          });\n        }\n      ]]></script>\n    </scriptedOperation>\n\n    <scriptedOperation id=\"javascript.RenderPdf\">\n      <inputType>document</inputType>\n      <outputType>blob</outputType>\n      <category>javascript</category>\n      <param name=\"templateName\" type=\"string\"/>\n      <param name=\"attach\" type=\"boolean\"/>\n      <param name=\"templateData\" type=\"string\"/>\n      <description>Render a document with a given template and converts it to PDF.</description>\n      <script><![CDATA[\n        function run(input, params) {\n          var blob = TemplateProcessor.Render(input, {\n            'templateName': params.templateName,\n            'attach': params.attach || false,\n            'templateData': params.templateData || null\n          });\n          return Blob.RunConverter(blob, {'converter': 'any2pdf'});\n        }\n      ]]></script>\n    </scriptedOperation>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/operations-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.pageproviders/Contributions/org.nuxeo.platform.TemplateSources.pageproviders--providers",
              "id": "org.nuxeo.platform.TemplateSources.pageproviders--providers",
              "registrationOrder": 34,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n\n    <coreQueryPageProvider name=\"template_based\">\n      <pattern escapeParameters=\"true\" quoteParameters=\"false\">\n        SELECT * FROM Document WHERE ecm:mixinType = 'TemplateBased' AND\n        ecm:isTrashed = 0 AND\n        nxts:bindings/*/templateId IN (?) AND ecm:isVersion = ?\n      </pattern>\n      <sort ascending=\"true\" column=\"dc:title\"/>\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.platform.TemplateSources.pageproviders",
          "name": "org.nuxeo.platform.TemplateSources.pageproviders",
          "requirements": [],
          "resolutionOrder": 885,
          "services": [],
          "startOrder": 711,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.pageproviders\">\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\"\n             point=\"providers\">\n\n    <coreQueryPageProvider name=\"template_based\">\n      <pattern escapeParameters=\"true\" quoteParameters=\"false\">\n        SELECT * FROM Document WHERE ecm:mixinType = 'TemplateBased' AND\n        ecm:isTrashed = 0 AND\n        nxts:bindings/*/templateId IN (?) AND ecm:isVersion = ?\n      </pattern>\n      <sort column=\"dc:title\" ascending=\"true\" />\n      <pageSize>20</pageSize>\n    </coreQueryPageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/pageprovider-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.template.serializer.service.TemplateSerializerServiceImpl",
          "documentationHtml": "",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.template.serializer.service.TemplateSerializerService",
              "descriptors": [
                "org.nuxeo.template.serializer.service.SerializerDescriptor"
              ],
              "documentation": "Contribute a new Serializer that can be use by the TemplateProcessor.Render operation\n",
              "documentationHtml": "<p>\nContribute a new Serializer that can be use by the TemplateProcessor.Render operation</p>",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.serializer.service.TemplateSerializerService/ExtensionPoints/org.nuxeo.template.serializer.service.TemplateSerializerService--serializers",
              "id": "org.nuxeo.template.serializer.service.TemplateSerializerService--serializers",
              "label": "serializers (org.nuxeo.template.serializer.service.TemplateSerializerService)",
              "name": "serializers",
              "version": "2021.57.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.serializer.service.TemplateSerializerService",
          "name": "org.nuxeo.template.serializer.service.TemplateSerializerService",
          "requirements": [],
          "resolutionOrder": 886,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.template.serializer.service.TemplateSerializerService",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.serializer.service.TemplateSerializerService/Services/org.nuxeo.template.serializer.service.TemplateSerializerService",
              "id": "org.nuxeo.template.serializer.service.TemplateSerializerService",
              "overriden": false,
              "version": "2021.57.3"
            }
          ],
          "startOrder": 945,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.template.serializer.service.TemplateSerializerService\">\n\n  <implementation class=\"org.nuxeo.template.serializer.service.TemplateSerializerServiceImpl\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.template.serializer.service.TemplateSerializerService\" />\n  </service>\n\n  <extension-point name=\"serializers\">\n    <documentation>Contribute a new Serializer that can be use by the TemplateProcessor.Render operation</documentation>\n    <object class=\"org.nuxeo.template.serializer.service.SerializerDescriptor\" />\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/serializer-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.template.serializer.service.TemplateSerializerService--serializers",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.serializer.SerializerService.default.contribution/Contributions/org.nuxeo.template.serializer.SerializerService.default.contribution--serializers",
              "id": "org.nuxeo.template.serializer.SerializerService.default.contribution--serializers",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.serializer.service.TemplateSerializerService",
                "name": "org.nuxeo.template.serializer.service.TemplateSerializerService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"serializers\" target=\"org.nuxeo.template.serializer.service.TemplateSerializerService\">\n    <serializer class=\"org.nuxeo.template.serializer.executors.XMLTemplateSerializer\" name=\"default\"/>\n    <serializer class=\"org.nuxeo.template.serializer.executors.XMLTemplateSerializer\" name=\"xml\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager/org.nuxeo.template.serializer.SerializerService.default.contribution",
          "name": "org.nuxeo.template.serializer.SerializerService.default.contribution",
          "requirements": [],
          "resolutionOrder": 887,
          "services": [],
          "startOrder": 760,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.template.serializer.SerializerService.default.contribution\">\n\n  <extension target=\"org.nuxeo.template.serializer.service.TemplateSerializerService\" point=\"serializers\">\n    <serializer name=\"default\" class=\"org.nuxeo.template.serializer.executors.XMLTemplateSerializer\" />\n    <serializer name=\"xml\" class=\"org.nuxeo.template.serializer.executors.XMLTemplateSerializer\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/serializer-service-contribution.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-template-rendering-core-2021.57.3.jar",
      "groupId": "org.nuxeo.template.rendering",
      "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager",
      "id": "org.nuxeo.template.manager",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.23\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 1.0.0\r\nBundle-Name: Nuxeo ECM Document template Manager\r\nBundle-SymbolicName: org.nuxeo.template.manager;singleton:=true\r\nNuxeo-Component: OSGI-INF/core-types-contrib.xml,OSGI-INF/types-contri\r\n b.xml,OSGI-INF/life-cycle-contrib.xml,OSGI-INF/templateprocessor-serv\r\n ice.xml,OSGI-INF/templateprocessor-contrib.xml,OSGI-INF/adapter-contr\r\n ib.xml,OSGI-INF/listener-contrib.xml,OSGI-INF/convert-service-contrib\r\n .xml,OSGI-INF/mimetype-contrib.xml,OSGI-INF/rendition-contrib.xml,OSG\r\n I-INF/operations-contrib.xml,OSGI-INF/pageprovider-contrib.xml,OSGI-I\r\n NF/serializer-service.xml,OSGI-INF/serializer-service-contribution.xml\r\n\r\n",
      "maxResolutionOrder": 887,
      "minResolutionOrder": 874,
      "packages": [
        "nuxeo-template-rendering"
      ],
      "parentReadme": {
        "blobProviderId": "default",
        "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
        "digest": "e9e176463318c286d8f00955de4c43a2",
        "encoding": "UTF-8",
        "length": 3344,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "readme": {
        "blobProviderId": "default",
        "content": "This modules contains the implementation of nuxexo-template-rendering module.\n\nMain objects are\n\n## TemplateProcessorComponent\n\nRuntime Component used to handle Extension Points and expose the TemplateProcessorService interface\n(interface that is used to manipulate TemplateProcessors and associated documents).\n\n## Default TemplateProcessor implementation\n\n - FreeMarker TemplateProcessor : FreeMarkerProcessor\n - XSLT based TemplateProcessor : XSLTProcessor\n\n## TemplateBasedDocumentAdapterImpl\n\nDefault implementation of the DocumentModel adapter for interface TemplateBasedDocument\n(a DocumentModel that is bound to one or more templates)\n\n## TemplateSourceDocumentAdapterImpl\n\nDefault implementation of the DocumentModel adapter for interface TemplateSourceDocument\n(a DocumentModel that can provide a template)\n\n## TemplateBasedRenditionProvider\n\nProvides Rendition based on the template system.\n\n## Automation Operation\n\nAutomation Operations to wrapp TemplateProcessorService.\n",
        "digest": "80854b4d9e7e00496aa7934037da0b8b",
        "encoding": "UTF-8",
        "length": 985,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "requirements": [],
      "version": "2021.57.3"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-template-rendering-api",
      "artifactVersion": "2021.57.3",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.template.manager",
          "org.nuxeo.template.manager.api",
          "org.nuxeo.template.manager.jaxrs",
          "org.nuxeo.template.manager.jxls",
          "org.nuxeo.template.manager.xdocreport"
        ],
        "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template",
        "id": "grp:org.nuxeo.template",
        "name": "org.nuxeo.template",
        "parentIds": [
          "grp:org.nuxeo.template.rendering"
        ],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "e9e176463318c286d8f00955de4c43a2",
            "encoding": "UTF-8",
            "length": 3344,
            "mimeType": "text/plain",
            "name": "ReadMe.md"
          }
        ],
        "version": "2021.57"
      },
      "bundleId": "org.nuxeo.template.manager.api",
      "components": [],
      "fileName": "nuxeo-template-rendering-api-2021.57.3.jar",
      "groupId": "org.nuxeo.template.rendering",
      "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.api",
      "id": "org.nuxeo.template.manager.api",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.23\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 1.0.0\r\nBundle-Name: Nuxeo ECM Template Rendering API\r\nBundle-SymbolicName: org.nuxeo.template.manager.api;singleton:=true\r\n\r\n",
      "packages": [
        "nuxeo-template-rendering"
      ],
      "parentReadme": {
        "blobProviderId": "default",
        "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
        "digest": "e9e176463318c286d8f00955de4c43a2",
        "encoding": "UTF-8",
        "length": 3344,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "readme": {
        "blobProviderId": "default",
        "content": "This modules contains API for nuxexo-template-rendering module.\n\nThe main interfaces are :\n\n## TemplateProcessorService\n\nThis is the service interface that is used to manipulate TemplateProcessors and associated documents.\n\n## TemplateProcessor\n\nInterface to be implemented by TemplateProcessor providers.\n\n## TemplateBasedDocument\n\nAdapter interface on a DocumentModel that is bound to one or more templates.\n\n## TemplateSourceDocument\n\nAdapter interface for the DocumentModel that can provide a template.\n",
        "digest": "ded5b065dfbde0790ac0d9a354f8df1e",
        "encoding": "UTF-8",
        "length": 507,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "requirements": [],
      "version": "2021.57.3"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-template-rendering-jaxrs",
      "artifactVersion": "2021.57.3",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.template.manager",
          "org.nuxeo.template.manager.api",
          "org.nuxeo.template.manager.jaxrs",
          "org.nuxeo.template.manager.jxls",
          "org.nuxeo.template.manager.xdocreport"
        ],
        "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template",
        "id": "grp:org.nuxeo.template",
        "name": "org.nuxeo.template",
        "parentIds": [
          "grp:org.nuxeo.template.rendering"
        ],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "e9e176463318c286d8f00955de4c43a2",
            "encoding": "UTF-8",
            "length": 3344,
            "mimeType": "text/plain",
            "name": "ReadMe.md"
          }
        ],
        "version": "2021.57"
      },
      "bundleId": "org.nuxeo.template.manager.jaxrs",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.platform.TemplateSources.jaxrs.doctypes/Contributions/org.nuxeo.platform.TemplateSources.jaxrs.doctypes--doctype",
              "id": "org.nuxeo.platform.TemplateSources.jaxrs.doctypes--doctype",
              "registrationOrder": 54,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <doctype extends=\"Document\" name=\"WebTemplateSource\">\n      <schema name=\"common\"/>\n      <schema name=\"note\"/>\n      <schema name=\"files\"/>\n      <schema name=\"dublincore\"/>\n      <schema name=\"uid\"/>\n      <schema name=\"documenttemplate\"/>\n      <facet name=\"Downloadable\"/>\n      <facet name=\"Versionable\"/>\n      <facet name=\"Commentable\"/>\n      <facet name=\"HasRelatedText\"/>\n      <facet name=\"Template\"/>\n    </doctype>\n\n    <doctype append=\"true\" name=\"Folder\">\n      <subtypes>\n        <type>WebTemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype append=\"true\" name=\"Workspace\">\n      <subtypes>\n        <type>WebTemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype append=\"true\" name=\"TemplateRoot\">\n      <subtypes>\n        <type>WebTemplateSource</type>\n      </subtypes>\n    </doctype>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.platform.TemplateSources.jaxrs.doctypes",
          "name": "org.nuxeo.platform.TemplateSources.jaxrs.doctypes",
          "requirements": [
            "org.nuxeo.platform.TemplateSources.doctypes"
          ],
          "resolutionOrder": 888,
          "services": [],
          "startOrder": 704,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.jaxrs.doctypes\">\n\n  <require>org.nuxeo.platform.TemplateSources.doctypes</require>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\" point=\"doctype\">\n\n    <doctype name=\"WebTemplateSource\" extends=\"Document\">\n      <schema name=\"common\"/>\n      <schema name=\"note\"/>\n      <schema name=\"files\"/>\n      <schema name=\"dublincore\"/>\n      <schema name=\"uid\"/>\n      <schema name=\"documenttemplate\" />\n      <facet name=\"Downloadable\"/>\n      <facet name=\"Versionable\"/>\n      <facet name=\"Commentable\"/>\n      <facet name=\"HasRelatedText\"/>\n      <facet name=\"Template\" />\n    </doctype>\n\n    <doctype name=\"Folder\" append=\"true\">\n      <subtypes>\n        <type>WebTemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype name=\"Workspace\" append=\"true\">\n      <subtypes>\n        <type>WebTemplateSource</type>\n      </subtypes>\n    </doctype>\n    <doctype name=\"TemplateRoot\" append=\"true\">\n      <subtypes>\n        <type>WebTemplateSource</type>\n      </subtypes>\n    </doctype>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/core-types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.types.TypeService--types",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.platform.TemplateSources.jaxrs.types.contrib/Contributions/org.nuxeo.platform.TemplateSources.jaxrs.types.contrib--types",
              "id": "org.nuxeo.platform.TemplateSources.jaxrs.types.contrib--types",
              "registrationOrder": 13,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.types.TypeService",
                "name": "org.nuxeo.ecm.platform.types.TypeService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.platform.types.TypeService\">\n\n    <type coretype=\"WebTemplateSource\" id=\"WebTemplateSource\">\n      <label>WebTemplateSource</label>\n      <icon>/icons/webtemplate.png</icon>\n      <bigIcon>/icons/webtemplate_100.png</bigIcon>\n      <default-view>view_documents</default-view>\n      <category>SimpleDocument</category>\n      <layouts mode=\"create\">\n        <layout>heading</layout>\n        <layout>templateOptionsWizard</layout>\n        <layout>templateOptions</layout>\n        <layout>note</layout>\n      </layouts>\n      <layouts mode=\"view\">\n        <layout>heading</layout>\n        <layout>note</layout>\n        <layout>templateOptions</layout>\n        <layout>templateParams</layout>\n        <layout>linkedTemplateBasedDocs</layout>\n      </layouts>\n      <layouts mode=\"edit\">\n        <layout>heading</layout>\n        <layout>note</layout>\n      </layouts>\n    </type>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.platform.TemplateSources.jaxrs.types.contrib",
          "name": "org.nuxeo.platform.TemplateSources.jaxrs.types.contrib",
          "requirements": [],
          "resolutionOrder": 889,
          "services": [],
          "startOrder": 705,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.jaxrs.types.contrib\">\n\n  <extension target=\"org.nuxeo.ecm.platform.types.TypeService\"\n    point=\"types\">\n\n    <type id=\"WebTemplateSource\" coretype=\"WebTemplateSource\">\n      <label>WebTemplateSource</label>\n      <icon>/icons/webtemplate.png</icon>\n      <bigIcon>/icons/webtemplate_100.png</bigIcon>\n      <default-view>view_documents</default-view>\n      <category>SimpleDocument</category>\n      <layouts mode=\"create\">\n        <layout>heading</layout>\n        <layout>templateOptionsWizard</layout>\n        <layout>templateOptions</layout>\n        <layout>note</layout>\n      </layouts>\n      <layouts mode=\"view\">\n        <layout>heading</layout>\n        <layout>note</layout>\n        <layout>templateOptions</layout>\n        <layout>templateParams</layout>\n        <layout>linkedTemplateBasedDocs</layout>\n      </layouts>\n      <layouts mode=\"edit\">\n        <layout>heading</layout>\n        <layout>note</layout>\n      </layouts>\n    </type>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/types-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.lifecycle.LifeCycleService--types",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.platform.TemplateSources.jxrs.lifecycle.contrib/Contributions/org.nuxeo.platform.TemplateSources.jxrs.lifecycle.contrib--types",
              "id": "org.nuxeo.platform.TemplateSources.jxrs.lifecycle.contrib--types",
              "registrationOrder": 22,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "name": "org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\">\n    <types>\n      <type name=\"WebTemplateSource\">default</type>\n    </types>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.platform.TemplateSources.jxrs.lifecycle.contrib",
          "name": "org.nuxeo.platform.TemplateSources.jxrs.lifecycle.contrib",
          "requirements": [
            "org.nuxeo.platform.TemplateSources.lifecycle.contrib"
          ],
          "resolutionOrder": 890,
          "services": [],
          "startOrder": 706,
          "version": "2021.57.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.platform.TemplateSources.jxrs.lifecycle.contrib\">\n\n  <require>org.nuxeo.platform.TemplateSources.lifecycle.contrib</require>\n\n  <extension target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\"\n    point=\"types\">\n    <types>\n      <type name=\"WebTemplateSource\">default</type>\n    </types>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/life-cycle-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "Adds helper function to manage REST resources urls\n      <ul>\n    <li>jaxrs.getResourceUrl(resourceName)</li>\n</ul>\n",
              "documentationHtml": "<p>\nAdds helper function to manage REST resources urls\n</p><ul><li>jaxrs.getResourceUrl(resourceName)</li></ul>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--contextExtension",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.template.service.jaxrs.contrib/Contributions/org.nuxeo.template.service.jaxrs.contrib--contextExtension",
              "id": "org.nuxeo.template.service.jaxrs.contrib--contextExtension",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"contextExtension\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>Adds helper function to manage REST resources urls\n      <ul>\n        <li>jaxrs.getResourceUrl(resourceName)</li>\n      </ul>\n    </documentation>\n\n    <contextFactory class=\"org.nuxeo.template.jaxrs.context.ExtensionFactory\" name=\"jaxrs\">\n    </contextFactory>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs/org.nuxeo.template.service.jaxrs.contrib",
          "name": "org.nuxeo.template.service.jaxrs.contrib",
          "requirements": [
            "org.nuxeo.template.service.defaultContrib"
          ],
          "resolutionOrder": 891,
          "services": [],
          "startOrder": 762,
          "version": "2021.57.3",
          "xmlFileContent": "<component\n  name=\"org.nuxeo.template.service.jaxrs.contrib\">\n\n  <require>org.nuxeo.template.service.defaultContrib</require>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"contextExtension\">\n\n    <documentation>Adds helper function to manage REST resources urls\n      <ul>\n        <li>jaxrs.getResourceUrl(resourceName)</li>\n      </ul>\n    </documentation>\n\n    <contextFactory name=\"jaxrs\" class=\"org.nuxeo.template.jaxrs.context.ExtensionFactory\">\n    </contextFactory>\n\n  </extension>\n\n\n </component>",
          "xmlFileName": "/OSGI-INF/templateprocessor-contrib.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-template-rendering-jaxrs-2021.57.3.jar",
      "groupId": "org.nuxeo.template.rendering",
      "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jaxrs",
      "id": "org.nuxeo.template.manager.jaxrs",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.23\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 1.0.0\r\nBundle-Name: Nuxeo ECM Document template Manager JAXRS Binding\r\nBundle-SymbolicName: org.nuxeo.template.manager.jaxrs;singleton:=true\r\nNuxeo-Component: OSGI-INF/core-types-contrib.xml,OSGI-INF/types-contri\r\n b.xml,OSGI-INF/life-cycle-contrib.xml,OSGI-INF/templateprocessor-cont\r\n rib.xml\r\nNuxeo-WebModule: org.nuxeo.template.jaxrs.JAXRSTemplatesApplication;na\r\n me=DocumentTemplates\r\n\r\n",
      "maxResolutionOrder": 891,
      "minResolutionOrder": 888,
      "packages": [
        "nuxeo-template-rendering"
      ],
      "parentReadme": {
        "blobProviderId": "default",
        "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
        "digest": "e9e176463318c286d8f00955de4c43a2",
        "encoding": "UTF-8",
        "length": 3344,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "readme": {
        "blobProviderId": "default",
        "content": "# nuxeo-template-rendering-jaxrs\n\n## Overview\n\nThis module mainly contribute :\n\n - a JAXRS API for accessing template and template based document and their resources\n\n - a WebTemplate document type\n\nCompared to a \"regular\" template, the WebTemplate is based on a Note so that you can directly edit the template from within Nuxeo UI.\n\nThe JAXRS API is here to provide REST binding that allow to retrieve resources associated to a template or a template base document.\n\nFor example if you template is HTML based and requires the use of a CSS, you may want to attach the CSS to you template using the standard attachement system. And you may also want to override the CSS by attaching a custom version of you CSS directly on the target document.\n\nThe JAXRS App provide a simple REST url mapping that handle that, basically if you want to reference a CSS names style.css, you can use the url :\n\n    /nuxeo/site/templates/doc/{docUUID}/resource/{templateName}/style.css\n\nThen the style.css resources will be taken from the document or from the template document associated to it.\n\nFrom within the template, you can reference this url via the additional context function :\n\n    ${jaxrs.getResourceUrl(\"style.css\")}\n",
        "digest": "af4a6e35e3003f4e59ca265455186dfa",
        "encoding": "UTF-8",
        "length": 1209,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "requirements": [],
      "version": "2021.57.3"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-template-rendering-jxls",
      "artifactVersion": "2021.57.3",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.template.manager",
          "org.nuxeo.template.manager.api",
          "org.nuxeo.template.manager.jaxrs",
          "org.nuxeo.template.manager.jxls",
          "org.nuxeo.template.manager.xdocreport"
        ],
        "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template",
        "id": "grp:org.nuxeo.template",
        "name": "org.nuxeo.template",
        "parentIds": [
          "grp:org.nuxeo.template.rendering"
        ],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "e9e176463318c286d8f00955de4c43a2",
            "encoding": "UTF-8",
            "length": 3344,
            "mimeType": "text/plain",
            "name": "ReadMe.md"
          }
        ],
        "version": "2021.57"
      },
      "bundleId": "org.nuxeo.template.manager.jxls",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "JXLS template processor  @author Thierry Delprat (td@nuxeo.com)\n",
              "documentationHtml": "<p>\nJXLS template processor  &#64;author Thierry Delprat (td&#64;nuxeo.com)</p>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jxls/org.nuxeo.template.service.jxlsContrib/Contributions/org.nuxeo.template.service.jxlsContrib--processor",
              "id": "org.nuxeo.template.service.jxlsContrib--processor",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"processor\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>JXLS template processor  @author Thierry Delprat (td@nuxeo.com)</documentation>\n\n    <templateProcessor class=\"org.nuxeo.template.processors.jxls.JXLSTemplateProcessor\" default=\"false\" label=\"JXLS Processor\" name=\"JXLSProcessor\">\n      <supportedMimeType>application/vnd.ms-excel</supportedMimeType>\n      <supportedExtension>xls</supportedExtension>\n    </templateProcessor>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentation": "\n      Property to activate use of the old JXLS 1 for template rendering instead of JXLS 2.\n    \n",
              "documentationHtml": "<p>\nProperty to activate use of the old JXLS 1 for template rendering instead of JXLS 2.\n</p><p></p>",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jxls/org.nuxeo.template.service.jxlsContrib/Contributions/org.nuxeo.template.service.jxlsContrib--configuration",
              "id": "org.nuxeo.template.service.jxlsContrib--configuration",
              "registrationOrder": 66,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <documentation>\n      Property to activate use of the old JXLS 1 for template rendering instead of JXLS 2.\n    </documentation>\n    <property name=\"org.nuxeo.template.rendering.jxls1\">false</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jxls/org.nuxeo.template.service.jxlsContrib",
          "name": "org.nuxeo.template.service.jxlsContrib",
          "requirements": [
            "org.nuxeo.template.service.defaultContrib"
          ],
          "resolutionOrder": 892,
          "services": [],
          "startOrder": 763,
          "version": "2021.57.3",
          "xmlFileContent": "<component\n  name=\"org.nuxeo.template.service.jxlsContrib\">\n\n  <require>org.nuxeo.template.service.defaultContrib</require>\n\n    <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"processor\">\n\n    <documentation>JXLS template processor  @author Thierry Delprat (td@nuxeo.com)</documentation>\n\n    <templateProcessor name=\"JXLSProcessor\" label=\"JXLS Processor\" default=\"false\" class=\"org.nuxeo.template.processors.jxls.JXLSTemplateProcessor\">\n      <supportedMimeType>application/vnd.ms-excel</supportedMimeType>\n      <supportedExtension>xls</supportedExtension>\n    </templateProcessor>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <documentation>\n      Property to activate use of the old JXLS 1 for template rendering instead of JXLS 2.\n    </documentation>\n    <property name=\"org.nuxeo.template.rendering.jxls1\">false</property>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/templateprocessor-contrib.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-template-rendering-jxls-2021.57.3.jar",
      "groupId": "org.nuxeo.template.rendering",
      "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.jxls",
      "id": "org.nuxeo.template.manager.jxls",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.23\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 1.0.0\r\nBundle-Name: Nuxeo ECM Document template JXLS plugin\r\nBundle-SymbolicName: org.nuxeo.template.manager.jxls;singleton:=true\r\nNuxeo-Component: OSGI-INF/templateprocessor-contrib.xml\r\n\r\n",
      "maxResolutionOrder": 892,
      "minResolutionOrder": 892,
      "packages": [
        "nuxeo-template-rendering"
      ],
      "parentReadme": {
        "blobProviderId": "default",
        "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
        "digest": "e9e176463318c286d8f00955de4c43a2",
        "encoding": "UTF-8",
        "length": 3344,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "readme": {
        "blobProviderId": "default",
        "content": "This modules contains [JXLS http://jxls.sourceforge.net/] plugins of nuxexo-template-rendering module.\n\n## TemplateProcessor\n\nJXLSTemplateProcessor provides an implemantation of the TemplateProcessor that uses JXLS as an engine.\n\n## Supported formats\n\nThis template processor supports Microsoft Excel files.\n\n## Supported features\n\n - merge fields\n - loops on fields\n\n## Templating format\n\nSee [JXLS samples http://jxls.sourceforge.net/samples/tagsample.html].\n",
        "digest": "ae9b79afd03a247a3b66cead946138d6",
        "encoding": "UTF-8",
        "length": 461,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "requirements": [],
      "version": "2021.57.3"
    },
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-template-rendering-xdocreport",
      "artifactVersion": "2021.57.3",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.template.manager",
          "org.nuxeo.template.manager.api",
          "org.nuxeo.template.manager.jaxrs",
          "org.nuxeo.template.manager.jxls",
          "org.nuxeo.template.manager.xdocreport"
        ],
        "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template",
        "id": "grp:org.nuxeo.template",
        "name": "org.nuxeo.template",
        "parentIds": [
          "grp:org.nuxeo.template.rendering"
        ],
        "readmes": [
          {
            "blobProviderId": "default",
            "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
            "digest": "e9e176463318c286d8f00955de4c43a2",
            "encoding": "UTF-8",
            "length": 3344,
            "mimeType": "text/plain",
            "name": "ReadMe.md"
          }
        ],
        "version": "2021.57"
      },
      "bundleId": "org.nuxeo.template.manager.xdocreport",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "XDocReport Report based template processor\n",
              "documentationHtml": "<p>\nXDocReport Report based template processor</p>",
              "extensionPoint": "org.nuxeo.template.service.TemplateProcessorComponent--processor",
              "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.xdocreport/org.nuxeo.template.service.xdocreport.contrib/Contributions/org.nuxeo.template.service.xdocreport.contrib--processor",
              "id": "org.nuxeo.template.service.xdocreport.contrib--processor",
              "registrationOrder": 4,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.template.service.TemplateProcessorComponent",
                "name": "org.nuxeo.template.service.TemplateProcessorComponent",
                "type": "service"
              },
              "version": "2021.57.3",
              "xml": "<extension point=\"processor\" target=\"org.nuxeo.template.service.TemplateProcessorComponent\">\n\n    <documentation>XDocReport Report based template processor</documentation>\n\n    <templateProcessor class=\"org.nuxeo.template.processors.xdocreport.XDocReportProcessor\" default=\"true\" label=\"XDocReport processor\" name=\"XDocReportProcessor\">\n      <supportedMimeType>application/vnd.oasis.opendocument.text</supportedMimeType>\n      <supportedMimeType>application/vnd.openxmlformats-officedocument.wordprocessingml.document</supportedMimeType>\n      <supportedMimeType>application/vnd.oasis.opendocument.spreadsheet</supportedMimeType>\n      <supportedExtension>odt</supportedExtension>\n      <supportedExtension>docx</supportedExtension>\n      <supportedExtension>ods</supportedExtension>\n    </templateProcessor>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.xdocreport/org.nuxeo.template.service.xdocreport.contrib",
          "name": "org.nuxeo.template.service.xdocreport.contrib",
          "requirements": [
            "org.nuxeo.template.service.defaultContrib"
          ],
          "resolutionOrder": 893,
          "services": [],
          "startOrder": 764,
          "version": "2021.57.3",
          "xmlFileContent": "<component\n  name=\"org.nuxeo.template.service.xdocreport.contrib\">\n\n  <require>org.nuxeo.template.service.defaultContrib</require>\n\n  <extension target=\"org.nuxeo.template.service.TemplateProcessorComponent\" point=\"processor\">\n\n    <documentation>XDocReport Report based template processor</documentation>\n\n    <templateProcessor name=\"XDocReportProcessor\" label=\"XDocReport processor\" default=\"true\" class=\"org.nuxeo.template.processors.xdocreport.XDocReportProcessor\">\n      <supportedMimeType>application/vnd.oasis.opendocument.text</supportedMimeType>\n      <supportedMimeType>application/vnd.openxmlformats-officedocument.wordprocessingml.document</supportedMimeType>\n      <supportedMimeType>application/vnd.oasis.opendocument.spreadsheet</supportedMimeType>\n      <supportedExtension>odt</supportedExtension>\n      <supportedExtension>docx</supportedExtension>\n      <supportedExtension>ods</supportedExtension>\n    </templateProcessor>\n\n  </extension>\n\n </component>",
          "xmlFileName": "/OSGI-INF/templateprocessor-contrib.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-template-rendering-xdocreport-2021.57.3.jar",
      "groupId": "org.nuxeo.template.rendering",
      "hierarchyPath": "/grp:org.nuxeo.template.rendering/grp:org.nuxeo.template/org.nuxeo.template.manager.xdocreport",
      "id": "org.nuxeo.template.manager.xdocreport",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.23\r\nBundle-ManifestVersion: 1\r\nBundle-Version: 1.0.0\r\nBundle-Name: Nuxeo ECM Document template Manager XDocreport plugin\r\nBundle-SymbolicName: org.nuxeo.template.manager.xdocreport;singleton:=\r\n true\r\nNuxeo-WebModule: org.nuxeo.template.xdocreport.jaxrs.JAXRSRemotingAppl\r\n ication;name=XDocTemplateResources\r\nNuxeo-Component: OSGI-INF/templateprocessor-contrib.xml\r\n\r\n",
      "maxResolutionOrder": 893,
      "minResolutionOrder": 893,
      "packages": [
        "nuxeo-template-rendering"
      ],
      "parentReadme": {
        "blobProviderId": "default",
        "content": "\n# Nuxeo Template Rendering\n\n## About Nuxeo Template Rendering\n The Nuxeo Template Rendering is a set of plugins that provides a way to associate a Nuxeo Document with a Template. The Templates are used to render the associated document. Depending on the Template type, a different Template Processor will be used and the resulting rendering can be :\n\n   * an HTML document\n   * an XML document\n   * an OpenOffice document\n   * an MS Office document\n\n\nEach template processor has his own logic for rendering a Document from a Template :\n\n   * raw processing (FreeMarker or XSLT)\n   * merge fields replacement (MS Office / OpenOffice)\n\nThis project is an on-going project, supported by Nuxeo.\n\n## Sub-modules organization\nThe project is splitted in several sub modules :\n\n**nuxeo-template-rendering-api**\n\nAPI module containing all interfaces.\n\n**nuxeo-template-rendering-core**\n\nComponent, extension points and service implementation. This modules only contains template processors for FreeMarker and XSLT.\n\n**nuxeo-template-rendering-jsf**\n\nContribute UI level extensions: Layouts, Widgets, Views, Url bindings ...\n\n**nuxeo-template-rendering-xdocreport**\n\nContribute the OpenOffice / DocX processor based on XDocReport. This is by far the most powerfull processor.\nSee: http://code.google.com/p/xdocreport/\n\n**nuxeo-template-rendering-jxls**\n\nContribute a template processor for XLS files based on JXLS project. See: http://jxls.sourceforge.net/\n\n**nuxeo-template-rendering-jod**\n\nContribute JOD Report based template processor for ODT files. This renderer is historical and replaced by xdocreport that is more powerful.\n\n**nuxeo-template-rendering-jaxrs**\n\nContribute a JAXRS simple API as well as a new WebTemplate doc type that is based on a Note rather than a file.\n\n**nuxeo-template-rendering-sandbox**\n\nMisc code and extensions that are currently experimental.\n\n**nuxeo-template-rendering-package**\n\nBuilder for marketplace package.\n\n## Building\n\n### How to build Nuxeo Template Rendering\nBuild the Nuxeo Template Rendering add-on with Maven:\n\n```mvn clean install```\n\n## Deploying\nNuxeo Template Rendering is available as a package add-on [from the Nuxeo Marketplace] (https://connect.nuxeo.com/nuxeo/site/marketplace/package/nuxeo-template-rendering)\n\n## Resources\n### Documentation\nThe documentation for Nuxeo Template Rendering is available in our Documentation Center: http://doc.nuxeo.com/x/9YSo\n\n### Reporting Issues\nYou can follow the developments in the Nuxeo Platform project of our JIRA bug tracker, which includes a Template Rendering component: https://jira.nuxeo.com/browse/NXP/component/11405\n\nYou can report issues on: http://answers.nuxeo.com/\n\n## About Nuxeo\nNuxeo dramatically improves how content-based applications are built, managed and deployed, making customers more agile, innovative and successful. Nuxeo provides a next generation, enterprise ready platform for building traditional and cutting-edge content oriented applications. Combining a powerful application development environment with SaaS-based tools and a modular architecture, the Nuxeo Platform and Products provide clear business value to some of the most recognizable brands including Verizon, Electronic Arts, Sharp, FICO, the U.S. Navy, and Boeing. Nuxeo is headquartered in New York and Paris. More information is available at www.nuxeo.com.\n",
        "digest": "e9e176463318c286d8f00955de4c43a2",
        "encoding": "UTF-8",
        "length": 3344,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "readme": {
        "blobProviderId": "default",
        "content": "This modules contains [XDocReport http://code.google.com/p/xdocreport/] plugins of nuxexo-template-rendering module.\n\n## TemplateProcessor\n\nXDocReportProcessor provides an implemantation of the TemplateProcessor that uses XDocReport as an engine.\n\n## Supported formats\n\nThis template processor supports several formats :\n\n - OpenOffice ODT (Write)\n - OpenOffice ODS (Calc)\n - MS Office docx (Word)\n\n## Supported features\n\n - merge fields\n - loops on fields\n - picture insertion\n - text formatting and content inclusion\n\n## Templating format\n\nSee [XDocReport documentation  http://code.google.com/p/xdocreport/wiki/DesignReport].\n\n## XDocReport Remoting\n\nThis module also contains a WebEngine JAX-RS module to provide experimental support for XDocReport remoting and tooling.\n\n## XDocReportTools and REST bindings\n\nXDocReport provide an OpenOffice addon that help the design of Templates.\nThis is still an early version, but you can however use it with Nuxeo.\n\nThe field definition XML file can be generated from Nuxeo Rest API.\nThe field definition file can be generate on a per document type basis :\n\n http://server:port/nuxeo/site/xdoctemplates/xdocresources/model/{docType}\n\nFor XDocReport Resource remote service you can use :\n\n http://server:post/nuxeo/site/xdoctemplates/xdocresources\n",
        "digest": "743e60bdbbcd7eb440e32e67b02f396c",
        "encoding": "UTF-8",
        "length": 1291,
        "mimeType": "text/plain",
        "name": "ReadMe.md"
      },
      "requirements": [],
      "version": "2021.57.3"
    }
  ],
  "creationDate": 1721639286546,
  "key": "Nuxeo Platform-2021.57",
  "name": "Nuxeo Platform",
  "operations": [
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Conversion",
      "contributingComponent": "org.nuxeo.platform.TemplateSources.operations",
      "description": "Detach a template from all its bound documents.",
      "hierarchyPath": "/op:TemplateProcessor.Detach",
      "label": "Detach a template",
      "name": "TemplateProcessor.Detach",
      "operationClass": "org.nuxeo.template.automation.DetachTemplateOperation",
      "params": [],
      "signature": [
        "document",
        "void"
      ],
      "url": "TemplateProcessor.Detach",
      "version": "2021.57.3"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Conversion",
      "contributingComponent": "org.nuxeo.platform.TemplateSources.operations",
      "description": "Render the target document with the associated template if any. Returns the rendered Blob or the main Blob if no template is associated to the document.",
      "hierarchyPath": "/op:TemplateProcessor.Render",
      "label": "Render with template",
      "name": "TemplateProcessor.Render",
      "operationClass": "org.nuxeo.template.automation.RenderWithTemplateOperation",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "attach",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "save",
          "order": 0,
          "type": "boolean",
          "values": [
            "true"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "serializer",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "store",
          "order": 0,
          "type": "boolean",
          "values": [
            "false"
          ],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "templateData",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "templateName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "blob"
      ],
      "url": "TemplateProcessor.Render",
      "version": "2021.57.3"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "javascript",
      "contributingComponent": "org.nuxeo.platform.TemplateSources.operations",
      "description": "Filter templates according to the type of a given input document.",
      "hierarchyPath": "/op:javascript.FilterTemplatesByType",
      "label": "javascript.FilterTemplatesByType",
      "name": "javascript.FilterTemplatesByType",
      "operationClass": "org.nuxeo.automation.scripting.internals.ScriptingOperationImpl",
      "params": [],
      "signature": [
        "document",
        "documents"
      ],
      "url": "javascript.FilterTemplatesByType",
      "version": "2021.57.3"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "javascript",
      "contributingComponent": "org.nuxeo.platform.TemplateSources.operations",
      "description": "Render a document with a given template and converts it to PDF.",
      "hierarchyPath": "/op:javascript.RenderPdf",
      "label": "javascript.RenderPdf",
      "name": "javascript.RenderPdf",
      "operationClass": "org.nuxeo.automation.scripting.internals.ScriptingOperationImpl",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "templateName",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "attach",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "templateData",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "blob"
      ],
      "url": "javascript.RenderPdf",
      "version": "2021.57.3"
    }
  ],
  "packages": [
    {
      "@type": "NXPackage",
      "bundles": [
        "org.nuxeo.template.manager.api",
        "org.nuxeo.template.manager",
        "org.nuxeo.template.manager.jaxrs",
        "org.nuxeo.template.manager.jxls",
        "org.nuxeo.template.manager.xdocreport"
      ],
      "conflicts": [],
      "dependencies": [],
      "hierarchyPath": "/nuxeo-template-rendering-2021.57.3",
      "id": "nuxeo-template-rendering-2021.57.3",
      "name": "nuxeo-template-rendering",
      "optionalDependencies": [],
      "packageType": "addon",
      "title": "Template Rendering",
      "version": "2021.57.3"
    }
  ],
  "pluginSnapshots": {},
  "releaseDate": 1721639286546,
  "version": "2021.57"
}